Spring 中 Bean 的作用域

Singleton

唯一 bean 实例,Spring 中的 bean 默认都是单例的。

Prototype

每次请求都会创建一个新的 bean 实例。

Request

每一次 HTTP 请求都会产生一个新的 bean,该 bean 仅在当前 HTTP request 内有效。

Session

每一次 HTTP 请求都会产生一个新的 bean,该 bean 仅在当前 HTTP session 内有效。

global-session

全局 session 作用域,仅仅在基于 Portlet 的 Web 应用中才有意义,Spring5中已经没有了。Portlet 是能够生成语义代码(例如 HTML)片段的小型 Java Web 插件。它们基于 Portlet 容器,可以像 Servlet 一样处理 HTTP 请求。但是与 Servlet 不同,每个 Portlet 都有不同的会话。